package au.com.bytecode.opencsv.bean; import au.com.bytecode.opencsv.CSVReader; import org.junit.Test; import java.beans.IntrospectionException; import java.beans.PropertyDescriptor; import java.io.IOException; import java.io.StringReader; public class CsvToBeanTest { private static final String TEST_STRING = "name,orderNumber,num\n" + "kyle,abc123456,123\n" + "jimmy,def098765,456 "; private CSVReader createReader() { StringReader reader = new StringReader(TEST_STRING); return new CSVReader(reader); } private MappingStrategy createErrorMappingStrategy() { return new MappingStrategy() { public PropertyDescriptor findDescriptor(int col) throws IntrospectionException { return null; //To change body of implemented methods use File | Settings | File Templates. } public Object createBean() throws InstantiationException, IllegalAccessException { return null; //To change body of implemented methods use File | Settings | File Templates. } public void captureHeader(CSVReader reader) throws IOException { throw new IOException("This is the test exception"); } }; } @Test(expected = RuntimeException.class) public void throwRuntimeExceptionWhenExceptionIsThrown() { CsvToBean bean = new CsvToBean(); bean.parse(createErrorMappingStrategy(), createReader()); } }